home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 43
/
Amiga Format CD43 (1999)(Future Publishing)(GB)(Track 1 of 2)[!][issue 1999-09].iso
/
-serious-
/
comms
/
other
/
ascan
/
sources
/
errors.c
< prev
next >
Wrap
C/C++ Source or Header
|
1999-06-14
|
2KB
|
83 lines
#include "ascan.h"
#include <bsdsocket/socketbasetags.h>
/***************************************************************************/
/*print errors to stderr*/
void error(int code,char *prg,char *string)
{
STRPTR fmt;
switch (code)
{
case SCAN_ERROR_NOBSDSOCKET:
fmt = "%s: no TCP/IP stack running.\n";
break;
case SCAN_ERROR_NOSOCKET:
fmt = "%s: can't create socket.\n";
break;
case SCAN_ERROR_TIMEOUT:
fmt = "%s: general timeout...\n";
break;
case SCAN_ERROR_NOMEM:
fmt = "%s: no memory avaible.\n",prg;
break;
case SCAN_ERROR_TARGETNOTFOUND:
fmt = "%s: unknown host '%s'.\n";
break;
case SCAN_ERROR_SENDING: case SCAN_ERROR_BUFFER: case SCAN_ERROR_SELECT:
fprintf(stderr,"\n%s: socket error",prg);
if (SocketBase)
{
struct TagItem tags[2] = {SBTM_GETREF(SBTC_ERRNOSTRPTR),0,TAG_DONE};
STRPTR s;
s = string;
tags[0].ti_Data = (ULONG)&s;
if (!SocketBaseTagList(tags)) fprintf(stderr," (%s)",s);
}
fprintf(stderr,".\n",NULL);
fmt = NULL;
break;
case SCAN_ERROR_BREAK:
fmt = "%s: user break...\n";
break;
default:
fmt = NULL;
break;
}
if (fmt) fprintf(stderr,fmt,prg,string);
}
/***************************************************************************/
/*print globals to stderr*/
void printGlobal(struct global *g,STRPTR target,u_long targetIP)
{
fprintf(stderr,"Target: %s",target);
if (inet_addr(target)==INADDR_NONE) fprintf(stderr," [%s]",Inet_NtoA(targetIP));
fprintf(stderr,"\n");
fprintf(stderr,"From: %ld\n",g->from);
fprintf(stderr,"To: %ld\n",g->to);
fprintf(stderr,"Childs: %ld\n",(STRPTR)g->nchild);
fprintf(stderr,"PPC: %ld\n",g->ppt);
fprintf(stderr,"GTOut: ");
if (g->gt) fprintf(stderr,"%ld\n",(STRPTR)g->gt);
else fprintf(stderr,"[none]\n",NULL);
fprintf(stderr,"CTOut: ");
}
/***************************************************************************/